import { useUserStore } from '@store/useUserStore'
import { useMenuStore } from '@store/useMenuStore'
import { ILoginRequest } from '@interface/login'
// 这里不能直接导入 vue-router,而需要使用 router 文件夹下导出的 router
import router from '@router/index'

const userStore = useUserStore()
const menuStore = useMenuStore()

export default async function useLogin(res: ILoginRequest): Promise<void> {
  // 持久化存储 token
  const { data } = res
  localStorage.setItem('TOKEN', data || '')

  // 获取用户信息
  await userStore.getUserInfo()

  // 获取路由
  await menuStore.getMenu()

  // 跳转到后台管理系统首页
  router.push('/')
}
